Industrial Applications of Computer Algebra: Climbing Up a Mountain, Going Down a Hill
نویسندگان
چکیده
In this paper we present some personal experiences with Computer Algebra applications to industrial problems. In many cases the involved Computer Algebra problems seem as challenging as climbing up a difficult peak. Then one finds out that the trail leads up to a quite rugged hill . . . This point of view will be illustrated with “real” examples coming from robot kinematics and path planning, parametric CAD and shape design in automotive industry. 1. Considerations about the Nature of Computer Algebra Computer Algebra bounces back and forth, from Computer Science to Mathematics. As a scientific discipline Computer Algebra arises, in the 50’s, as a response to the difficulties posed by the first attempts to implement computer programs for analytical integration or differentiation (see the historical chapter in [10]). These programs were, in many cases, application oriented. The addressed difficulties were of various sorts, ranging from very mathematical —for instance, purely algebraic— to very computational, such as the need of a specific memory management policy. No matter how far from the implementation step could happen to be our research in Computer Algebra, we should not forget this: the success of so many symbolic computation programs that have been (and that are being) used to solve so many different problems, is the ultimate responsible for the existence, today, of Computer Algebra as a scientific discipline. There is not a “purely mathematical” Computer Algebra subfield. There are different levels of applicability, i.e. of proximity to an externally given goal . . . Thus, its achievement should measure the success of the application. This applies, in particular, to Computer Algebra industrial applications. Whether we agree totally, or just in part, or whether we disagree openly with the above statements, we will probably agree that the interest of Computer Algebra industrial applications should be primarily evaluated from the industrial partners’ side of the picture. But they tend to be, for good or for bad, rather silent. They rarely spend time and energy writing papers, and they usually do not attend Computer Algebra conferences. A negative consequence of this state of things is that we do not have an objective way to provide a solid overview of 2 L. Gonzalez-Vega and T. Recio industrial applications, and that we do not readily learn about succesful/failed cases. A positive consequence is that we can claim whatever we aim to claim, without much precaution. It was not always like this. In the earlier times, a handful of succesful Computer Algebra stories made their way to the communication media. We can recall articles published in the Scientific News [18], New York Times [23], Nature [22], Scientific American [17], etc. One could argue that it was, perhaps, just because of the scientific novelty of symbolic computation —performing in a few minutes or seconds some computations that required, previously, a titanic effort for humans— and that some of these were news on non-industrial aspects of Computer Algebra. Anyway, it has been quite long ago since Computer Algebra methods and tools have been echoed for the last time in the scientific news for the general public (with few exceptions such as [7]). And we all realize that, today, in many scientific fields, sucess stories with relevant consequences for industry, make their way, rather easily, into the newspapers. We could ask, then, what is the matter today with Computer Algebra industrial applications? The goal of this paper is to present some personal considerations around this question. Next section will describe some of the external circumstances that face academic/industrial cooperation. In section 3, we will summarily describe the more intrinsic cooperation problems posed by the in days gone by promising field of Computer Algebra applications in Robotics: certainly, we were trying to climb up a high mountain . . . Section 4 is devoted to present the more modest aims of an ongoing cooperation project which is effectively changing the practice of a concrete enterprise: we can say that we are now exploring the challenging top of a rugged hill. 2. Working with Industrial Partners Working with industrial partners is quite unconfortable for us, academics. They obstinately care about solving a problem, but just in most cases, or at least in some cases, or even in “this” particular case, instead of caring about solving it in general. Some times the solution they search for is conceptually rather simple, but tiresome to execute in practice. Other times they do not care about the problem they just have posed, if they see that you do not progress fast enough to solve it; and then they merely switch their mathematical model to a different and simpler one, asking you to forget about the interesting question you have just started to think about . . . It is difficult to get a paper properly done under these changing conditions, it seems impossible to bind in a Ph.D. thesis based on such “rush hour” solutions . . . As a result, only very few and very obstinate scholars persist working in this near-zero atmosphere (i.e. extremely poor in academic oxygen: publications and dissertations). 1The abstract of this paper explicitly states that we are telling here some personal experiences: the reader must have this in mind, when reading what follows. Industrial Applications of CA 3 Even if we assume this environement and if we try our best to achieve “costumer satisfaction”, we can run into other kind of problems. The following example comes from the FRISCO (“A FRamework for Integrated Symbolic/Numeric COmputation”, ESPRIT LTR Program, 1996–1999) project. This project arised as an industrial application of another ESPRIT project (the POSSO project: “Polynomial System Solving”). The FRISCO consortium was leaded by a software company, NAG Ltd (Oxford, UK) and included the universities of Cantabria (Spain), Pisa (Italy), Rennes I and the research institute INRIA at Sophia-Antipolis (both in France). After the POSSO experience, shared by some of the FRISCO teams, the FRISCO partners carefully started addressing the problem of industrial cooperation through an opinion poll to R&D responsibles in different industries. The conclusions of this survey, published under the name “The Needs of Industry on Polynomial System Solving” (see [11]), were discussed at a Workshop (Barcelona, fall 96). The questionnaire attempted to identify symbolic polynomial system solving problems appearing in each of the addressed industries, and it included: 1. Information about the corporation itself. 2. A specific item on: how did the corresponding polynomial system appear in the industrial context? 3. What kind of system was it (number of variables, coefficient type, etc.)? 4. What kind of solutions were looked for? 5. When had it to be solved (real time, off-line)? More than 60 enterprises were contacted, in several european countries, representing very different fields of economic activity: EDF, Alcatel, FIAT, REIS, Daimler Benz, VW, PEGOP, TECNATOM, CANDEMAT, SIMULOG, CASA, APIA XXI, LABEIN, . . . From this large group, only about a dozen replied (mostly Spanish, also EDF, CCETT, PEGOP, REIS ROBOTICS, etc.). It must be said that the coordinator of this activity was one of the coauthors of this paper, and this could explain the greater success with Spanish firms. Finally, just half dozen of these industries made the effort to attend the Workshop (invited by FRISCO). A first conclusion we can extract from these data is that it is also very hard for engineers working in industries, to distract some time and energy from daily occupations to participate in long-term cooperation projects with Academia. On the positive side, the information collected by the enquire was quite interesting. The polynomial system was, in most cases, generated by means of standard Symbolic/Numeric software. Usually the system had an equal number of equations and of unknowns (from 16 to several thousands). The system was quite sparse, but this fact was due, perhaps, to the way it was generated. Its degree was quite low, two or three, in general. The usual coefficients were real numbers, a few cases had coefficients in Z3, or they were exact rational numbers. If the system contained parameters, they were first specialized to numerical values, then the system was solved. The sought solutions were always real numbers, with a 10−7 accuracy requirement, both for solutions found on or off-line. If problems arised in the solving 4 L. Gonzalez-Vega and T. Recio process (for Newton-like methods) the mathematical model was then simplified. Usually, parametric solutions had not been regarded (but they would have been wellcome, in principle). We can also extract some general conclusions. One, is that it is hard to communicate with industries, because of the lack of common language and because of the divergent short-term interests from both sides. Moreover, technically speaking, we can say that cooperation with industry requires, 1. to develop Symbolic/Numerical integrated packages, 2. to adapt symbolic solvers to the kind of systems appearing in industry (which are not of general type), and 3. to disseminate the existence of symbolic solvers that deal with parameters. Moreover we observed that many industrially relevant situations are not so (mathematically speaking) challenging. Sometimes, to explore the capabilities of Computer Algebra into a particular problem involves changing the mathematical model, not simply solving it in the given model. Finally, we can remark that interesting contexts for cooperation seem to arise mainly with those industries which are in the academic vicinity. 3. Robot Kinematics and Motion Planning There are, of course, other, more intrinsic, reasons, that explain the difficulties of Computer Algebra for industrial cooperation. Few subjects have attracted more interest as an application domain for Computer Algebra than robot kinematics and motion planning problems. We can say that Robotics entered in Computer Algebra through the seminal paper [21]. The motion planning problems were, subsequently, reduced to a kind of quantifier elimination problem, in as many variables as the robot’s degrees of freedom. Luckily, Computer Algebra experts have had successfully developed and implemented a Quantifier Elimination algorithm by that time (see [4] and [2]). In the next years, a number of prestigious scientists contributed to this problem. For instance J. Canny obtained the Young Scientist Presidential Award in 1987 for his dissertation ([3]) on this topic. R. Alami and J.-P. Laumond went even further (see [1]), providing a general solution for the task planning problem (i.e. algorithmically describing how a robot should deal with a given task, including non self-movable objects and fixed obstacles). Yet, we can apply to this happy picture some statements taken from the Foreword to the chapter “Motion Planning”, in the book “Autonomous Robot Vehicles” (see [5]): “Although the theoretical approach has the drawback that the algorithms produced tend to be far too complicated to implement, the heuristic approach suffers from the problem that there 2The underlining is ours. Industrial Applications of CA 5 is no guarantee that the methods will work in all cases. However, the hope is that the theoretical results can reveal the fundamental structure of the problem, thus providing a framework to assist in making decisions as to what compromises should be made when developing a heuristic approach.” And, more clearly, in the chapter on “Prospects” from his book [14], Latombe states: “Although these results have still made few inroads in industrial applications, this should change soon. Several graphic simulators already include collision checking capabilities and it will not take long before they also offer path planning tools.” The obvious reason is that the Quantifier Elimination algorithms of general purpose offered by Computer Algebra are still too far from being able to deal with real size motion problems, for the incredible amounts of time and space they currently require. One can hope that “this should change soon”, of course . . . , although complexity results [6] apparently say that it could take some time to become reality. A similar analysis applies to the long standing problem of solving robot kinematic equations (those giving the position and orientation of each robot arm for a desired position and orientation of its hand) [16]. As McCarthy [15] mentions, the interesting case is that in which the equations include parameters, each corresponding to the possible geometric data for the different parts of a robot: “At the core of both the analysis of existing machines and the design of new ones is the solution of sets of nonlinear algebraic equations with parameters obtained form either the dimensions of the machine or the designed set of output positions . . . . . . . . . . . . . . . the designer is less often interested in a particular solution than in ranges of solutions and their relation to the prescribed features of the design.” We can track this problem for the 6R manipulator (with six degrees of freedom) from 1969 till the final computational solution in 1989 [20]. Essentially, the problem deals with solving symbolically a collection of non-linear equations and Computer Algebra provides with many different algorithms to cope with this situation. Yet, after 20 years of research in this issue, one of the persons who had contributed more to its solution, Professor Roth, from U. Stanford, confessed (in a personal communication) that he did not recall any immediate industrial reaction to his discovery. The reason, again, is that the obtained characteristic polynomials are by far too large to be handled with current computers. Summarizing, we can say that the field who has attracted more interest as a challenging application for Computer Algebra in the past decades, seems to have been made little industrially oriented progress in such a high-tech field as Robotics. For a more down to earth and promising approach see [13]. 6 L. Gonzalez-Vega and T. Recio 4. CAD and Shape Design in Automotive Industry To be less negative, we will like to present some ongoing work on an issue of modest theoretical challenge that is producing a concrete impact in the output of the industrial partner. The activity of the project “Integrating new algebraic-numerical techniques in Computer Aided Geometric Design (CAGD): Developing Problem Solving Environments and Implementation into an industrial CAD/CAM framework” funded by the spanish Ministery of Education (through European Union support for regional development) is directed to the resolution, in a more efficient way, of the mathematical problems arising when manipulating curves and surfaces into the CSIS software. This software is developped and maintained by the company CANDEMAT S.A. in order to be used for design purposes, production control and quality verification of the final product (shape design and cast construction in automotive industry). In order to check the possibility of using Computer Algebra techniques to improve the CSIS software, firstly three concrete problems were isolated: • the computation of the implicit equation of a surface in R presented by a rational parametrization, • the problem of conversion between the VDA and IGES formats (see 4.2), and • the tracing, algebraically guided, of algebraic curves implicitely defined. The reasons justifying the choice of the first problem rely on the fact that, when available, the implicit equation of a parametric surface is very useful to deal with point-surface position problems, surface intersections, sectioning, trimmed surfaces and sculptured solids, etc. For the second problem, to remark that the manipulation of trimmed surfaces (surfaces with holes) involves the exact topology computation of several real algebraic plane curves defined in the parameter space. 4.1. Generic implicititation applied to sectioning and offsetting Two main difficulties were encountered when trying to use inside CSIS the usual elimination technics to deal with implicitation problems: first, it is usually a very costly algebraic operation and, second, the coefficients of the parametrization are usually floating-point numbers. The second difficulty was overcome by taking into account that, in general, a concrete object to model (and then to construct) is made by several hundreds (or thousands) of small patches, all of them sharing the same algebraic structure. For such an object a database has been constructed containing the implicit equation of every class of patches appearing in its definition. This database must also contains the inversion formulae (giving the parameters in terms of the cartesian coordinates) and must be pruned to avoid specialization problems. Moreover the database for a specific object is kept into a bigger and general database for a further use. In the particular case of the objects provided by CANDEMAT S.A., the implicitation process was made by using Sylvester resultants, Grobner Basis computations and ad-hoc techniques for specific cases. Since the implicitation procedure Industrial Applications of CA 7 was a preprocessing step, no time is spent when the CAD/CAM user is working. Moreover the solution to the floating-point coefficients problem is rather simple under this approach, requiring just the specialization in the precomputed implicit equation. Example 4.1. In the database, the implicit equation of the parametric patch x = x00 t2 − t t2 − t1 + x01 t− t1 t2 − t1 y = y00 s2 − s s2 − s1 + y11 s− s1 s2 − s1 z = ( z00 s2 − s s2 − s1 + z10 s− s1 s2 − s1 ) t2 − t t2 − t1 + ( z10 s2 − s s2 − s1 + z11 s− s1 s2 − s1 ) t− t1 t2 − t1 appears as: (z00 − 2z10 + z11)xy + (y00z10 + y11z10 − y00z11 − y11z00)x + (x00z10 + x01z10 − x00z11 − x01z00)y + (x00y11 − x00y00 + x01y00 − x01y11)z + x01y11z00 − x00y11z10 + x00y00z11 − x01y00z10 . The sectioning by the plane X = k of a B-spline proceeds, with this new strategy, by performing the following steps: • First, we consider all the implicit equations Hi(X,Y, Z) of the different patches integrating the considered B-spline surface. • Second, the starting points in the parametric domain are determined and these are used to determine the interesting part of every curve Hi(k, Y, Z) = 0 through a convenient discretisation. • The obtained points are interpolated by a spline curve which represents the desired section. We should mention, finally, that for specific objects, the time for sectioning, by using this strategy, has already been divided by a factor of 3 when compared with the previous approach followed in CSIS. As a future work we regard the resolution of some problems arising in the implicitation problem: • Some algebraic structures arising in the database construction are very complicated and the implicit equation has not been generated. Namely: x = f1(s, t) f0(s, t) , y = f2(s, t) f0(s, t) , z = f3(s, t) f0(s, t) with (i ∈ {0, 1, 2, 3}): fi = s(α (i) 3 t 2 + β 3 t + γ (i) 3 ) + s 2(α 2 t 2 + β 2 t + γ (i) 2 ) + s(α 1 t 2 + β 1 t + γ (i) 1 ) + α (i) 0 t 2 + β 0 t + γ (i) 0 . 8 L. Gonzalez-Vega and T. Recio • We will like to deal in advance with the specialization problems: up to this moment these are detected “a posteriori” when substituting the parametrization into the candidate to be the implicit equation. If the sectioning by using the implicitation procedure has been a first successful application, this will be much more important when dealing with the offsetting by taking into account that the offset of a B-spline is no longer a B-spline or, in general, a parametric surface (but an algebraic surface) and thus the use of implicit equations is a direct method not currently used in any CAD/CAM software. 4.2. Format conversion: from rational to polynomial parameterizations VGA and IGES are two of the formats most commonly used in CAD/CAM systems to represent and deal with the data required to describe and communicate the essential engineering characteristics of physical objects such as manufactured products. The VDA (Verband der Automobilundustrie) format was created in 1982 by the VDA Committee founded mainly by several German automobile and automotive supply companies. The IGES (Initial Graphics Exchange Specification) was created by the IGES/PDES Organisation (USA). The main difference between these two formats lies in the fact that VDA only accepts surfaces defined by polynomial parameterizations while IGES accepts both rational and polynomial. This is a very important problem in many companies in the automobile industry since they get the information in the IGES format but the specific CAD/CAM software they use only allows the use of the VDA format. The only way of solving this problem up to now has been by means of a method based upon an uniform subdivision of the parameter domain plus a polynomial interpolation procedure whose efficiency depends strongly on the degree of the polynomials to appear in the required polynomial parameterization (see [19]). The Computer Algebra behind this problem is still not completely well understood and new algorithms for solving this problem have been developed and initially checked by using new Hermite-Birkhoff interpolation schemes for multivariate polynomials (see [9]). These techniques also allow the reduction of the degree of the considered surface which produce a simplification of the implicitation procedure described in 4.1 since the degree of the parametric equations are smaller (see [8]). 4.3. Algebraically guided tracing of implicitly defined algebraic curves and surfaces Many important problems in Computer Aided Geometric Design are reduced to the computation of the graph of a planar algebraic curve implicitely presented. For example if we want to section the surface x = X(s, t) W (s, t) , y = Y (s, t) W (s, t) , z = Z(s, t) W (s, t) ; s, t ∈ [0, 1] with respect to the plane X = x0 then we have two possibilities: either we draw “into the square unit” [0, 1] × [0, 1] the planar algebraic curve defined by x0W (s, t) −X(s, t) = 0 Industrial Applications of CA 9 and then this picture is lifted to the considered surface or, if the implicit equation H(x, y, z) of the considered surface is available, the lifting procedure can be avoided by merely computing the graph of the planar curve H(x0, y, z) = 0 as it was shown in section 4.1. The problem of computing the graph (even topologically) of a planar algebraic curve defined implicitly has received special attention from Computer Algebra since it has been responsible for many advances regarding sub-resultants, real root counting, infinitesimal computations, etc. These algorithms have been successfully implemented in several Computer Algebra Systems (AXIOM and Maple) and now we are involved in the process of integrating the algorithms into the CSIS software (but some new practical problems have arisen since CSIS has just moved to Visual Basic under Windows 98 . . . ). The main reason for including these algorithms in CSIS, apart from its use in the sectioning procedure, is found into the manipulation of trimmed surfaces: parametric surfaces with holes defined as parametric curves in the parametric domain of the surface. For example, the sectioning of this kind of surfaces is not currently available in the CSIS software.
منابع مشابه
Design and Development of Adjustable Stair Climbing Robot
Abstract In the present scenario the application of robots is quite common to reduce the human effort in several areas. The stair climbing robots are used to climb the stairs for different applications up to now, but the main disadvantage of the rugged terrain robots is not adjustable according to the structure of the stairs. To overcome this, we have developed an adjustable stair climbing robo...
متن کاملA Pathology of Bottom-Up Hill-Climbing in Inductive Rule Learning
In this paper, we close the gap between the simple and straight-forward implementations of top-down hill-climbing that can be found in the literature, and the comparably complex strategies for greedy bottom-up generalization. Our main result is that the simple bottom-up counterpart to the top-down hill-climbing algorithm is unable to learn in domains with comparably dispersed examples. In parti...
متن کاملTourism industries and tourism foreign direct investment in Wales
Introduction Wales has some of the best landscapes in Europe, including three national parks which host activities that include hill walking, canoeing, mountain biking, kayaking and climbing. Wales is also becoming more and more popular for 'extreme' sports, including surfing, hang gliding and downhill cycling. In addition, cultural, historical and industrial heritage sites in Wales attract sig...
متن کاملComparison of Genetic and Hill Climbing Algorithms to Improve an Artificial Neural Networks Model for Water Consumption Prediction
No unique method has been so far specified for determining the number of neurons in hidden layers of Multi-Layer Perceptron (MLP) neural networks used for prediction. The present research is intended to optimize the number of neurons using two meta-heuristic procedures namely genetic and hill climbing algorithms. The data used in the present research for prediction are consumption data of water...
متن کاملRelationship between the climbing up and climbing down stairs domain scores on the FES-DMD, the score on the Vignos Scale, age and timed performance of functional activities in boys with Duchenne muscular dystrophy
BACKGROUND Knowing the potential for and limitations of information generated using different evaluation instruments favors the development of more accurate functional diagnoses and therapeutic decision-making. OBJECTIVE To investigate the relationship between the number of compensatory movements when climbing up and going down stairs, age, functional classification and time taken to perform ...
متن کاملEvaluating the Role of Optimization-Specific Search Heuristics in Effective Autotuning
The increasing complexities of modern architectures require compilers to extensively apply a large collection of architecture-sensitive optimizations, e.g., parallelization and memory locality optimizations, which interact with each other in unpredictable ways. The configuration space of these optimizations are exceedingly large, and heuristics for exploring the search space routinely end up se...
متن کامل